A commonly used resource for outdoor navigation and guidance of vehicles is satellite positioning technology, otherwise known as a Global Navigation Satellite System (GNSS). One example of a fully operational GNSS is the United States NAVSTAR Global Positioning System (GPS)—which will be referred to below when generally discussing satellite positioning technology. However, it will be appreciated that satellite positioning technologies other than GPS may be used in its place.
The operation of GPS is well known in the art, and generally employs a GPS receiver configured to receive signals from a number of GPS satellites. Each satellite broadcasts its own location and providing the GPS receiver can receive the broadcasted signals from a sufficient number and distribution of satellites, the GPS receiver can infer its own position.
A vehicle may therefore self-localize by employing a positioning system having a GPS receiver. However, in the event that a GPS receiver is not able to infer the vehicle's position—for example due to signal interference, then it may be possible for a vehicle positioning system to make use of other positioning resources.
For example, a vehicle can navigate using radio signals transmitted by terrestrial radio transmitters such as cellular telephone base stations, television and the like. The signals transmitted by such radio transmitters have distinguishing radio signal characteristics—such as repeated and unique code words—that can be exploited by a suitable positioning system for navigation. These radio signal characteristics, along with information about the locations of the transmitters, can be used to determine the position of a vehicle using known localization techniques such as multilateration and Enhanced Observed Time Difference (EOTD), as is known in the art.
In some of these approaches, the regular or otherwise predictably repeated code words are used to allow a positioning system receiver to synchronize with the transmitters. Once synchronized with a set of transmitters, a receiver can thereby determine the relative arrival times of the code words from the available set of terrestrial transmitters. As the vehicle moves and the relative arrival times vary, the receiver can determine its position accordingly. This process is relatively straightforward for transmitters that are synchronized with one another (as is the case with GPS). However, opportunistic terrestrial radio signal transmitters that are available to a positioning system are not usually synchronized—even if they are set up to transmit the same radio signal type, with the same code word repeat rate. For opportunistic radio signal transmitters of different types (e.g. different bandwidths and/or frequencies)—e.g. a cellular transmitter versus a DAB transmitter, synchronization is highly improbable.
As can be observed from a navigation system such a GPS, synchronization between the radio signal sources is very useful for radio localization—but is often not possible in an environment in which opportunistic, unsynchronized terrestrial radio signals are the only radio signal sources available for localization.
One known solution in the art is to compensate for the lack of synchronization by calculating clock offsets (relative to an imaginary universal ‘absolute’ clock) for each transmitter, and storing these offsets for use as clock corrections. In particular, a navigation system can make use of the following Equation 1 to calculate transmitter clock offsets for use in ‘emulating’ synchronicity:ct=|r−b|+ε+α  (1)Where:                c is the known speed of the radio waves;        t represents the arrival time (measured at the receiver position using a clock local to the autonomous vehicle) of a transmission from a transmitter;        r and b are vectors of the positions of the receiver and transmitter respectively. For example, each vector could be the “x, y” values in a Cartesian environment;        ε represents the error of the clock local to the autonomous vehicle; and        α represents the transmitter clock offset.        
Prior art vehicle navigation systems that attempt to make use of unsynchronized radio transmitters for navigation can therefore calculate the transmitter clock offset α and local clock error ε by collecting timing measurements at a number of different known vehicle positions relative to a stationary transmitter having a known location.
However, the calculation of the transmitter clock offset a and local clock error c values can be computationally expensive, especially when considering that multiple transmitters are required for effective self-localization. This is especially the case in a system that has the capability of dealing with imperfect data, for example by applying a localization estimation filter. In such a case, a state vector will need to be maintained, which will include calculating the offset values for every transmitter, as well as the errors/uncertainties associated with each of them.
Furthermore, if a vehicle employs a relatively cheap and simple navigation device, the local onboard clock is not likely to be stable. Therefore, the calculated value of a local clock error at one instance may not necessarily apply at another instance, thereby adversely affecting the position calculation. Accordingly, it would be beneficial for a vehicle navigation system to negate the effect of the local clock error.
While it is possible to obtain a highly stable clock reference using an atomic clock, or via a GPS fix, these are not necessarily practical solutions for many vehicles. Atomic clock references are heavy, expensive and unsuitable for use in many vehicle navigation devices. A stable timing reference can be obtained via GPS, but this relies on availability of a continuous GPS fix, and so is not possible under conditions in which a GPS signal cannot be obtained.
It is possible to formulate a local clock error model with which an attempt can be made to compensate for the likely error in an unstable local clock. However, the model needs to be calculated/calibrated for the eccentricities of each local clock independently, and must be updated over time. To do this is computationally expensive, and so undesirable in many vehicles, such as a small, remotely controlled or autonomous vehicle in which content weight, processing power, and battery life are valuable resources.
These are problems associated with the prior art devices that make use of the above Equation 1. What is needed, therefore, is a relatively cheap, light, portable vehicle navigation device able to utilize terrestrial radio signal transmitters for self-localization in the event that a GPS signal cannot be obtained. To save on battery usage and overall weight, it may also be desirable to reduce the computational burden involved with self-localization of such a device beyond those making use of the above Equation 1.